﻿// 3607. 打印日期.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>
#include <map>


using namespace std;
/*
https://www.acwing.com/problem/content/3610/
给出年份 y和一年中的第 d天，算出第 d天是几月几号。

输入格式
输入包含多组测试数据。

每组数据占一行，包含两个整数 y
 和 d
。

输出格式
每组数据输出一行一个结果，格式为 yyyy-mm-dd。

数据范围
输入最多包含 100
 组数据,
1≤y≤3000
,
1≤d≤366
,
数据保证合法。

输入样例：
2000 3
2000 31
2000 40
2000 60
2000 61
2001 60
输出样例：
2000-01-03
2000-01-31
2000-02-09
2000-02-29
2000-03-01
2001-03-01
*/

int daysPerMonth[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
int year, day;

bool isLeapYear(int x) {
    if ( 0 == x % 400) return true;
    if (x % 100 != 0 && x % 4 == 0) return true;

    return false;
}
 
void solve() {
    int curr = 1;
    if (isLeapYear(year)) { daysPerMonth[2]++; }
    while (day != 0) {
        if (daysPerMonth[curr] >= day) {
            printf("%04d-%02d-%02d\n",year,curr,day);
            break;
        }
        else {
            day -= daysPerMonth[curr];
            curr++;
        }
    }

    if (isLeapYear(year)) { daysPerMonth[2]--; }
}

int main()
{
    while (cin >> year>>day) {
        solve();
    }

    return 0;
}

 